Using vortices to provide tactile sensations corresponding to a visual presentation

ABSTRACT

To convey tactile sensations over an open space, a system may use a vortex generator to direct one or more vortices at an object in 3-D space. Once a vortex strikes an object—e.g., a user&#39;s hand—it applies a force. The vortex generator can control the frequency and intensity of the vortices in order to provide different tactile sensations that correspond to virtual objects or events in a visual presentation. The system may identify and track objects in the real-world environment, and based on information provided by a device displaying the visual presentation, transmit instructions to the vortex generator to discharge vortices that convey a tactile sensation corresponding to the virtual object or event in the visual presentation. By doing so, the vortices augment the real-world environment to immerse the user in the visual presentation.

BACKGROUND

Field of the Invention

Embodiments presented in this disclosure relate to generating a vortexto provide tactile sensation, and more specifically, to provide atactile sensation corresponding to an object or event in a visualpresentation.

Description of the Related Art

Tactile (or haptic) feedback has evolved to provide a user with varioustactile sensations. In many applications, tactile feedback is used tofurther immerse a user in a virtual environment or visual presentation.That is, tactile feedback may be used to create an augmented realitywhere the events occurring in the visual presentation (e.g., a videogame, movie, television program, and the like) physically affect thereal world.

Tactile feedback may be provided using vibration, force, motion to theuser, electromechanical systems, and the like. For example, a gamecontroller may include a vibration system for simulating when the userhas driven off the road when playing a driving simulator. Other feedbacktechniques may rely on providing tactile feedback across an open space.In one example, a tactile feedback system may use a jet or column of airto simulate riding in a convertible or flying in a hang glider.Recently, ultrasound has also been used to provide feedback by issuingsounds waves that constructively interfere at points where tactilefeedback is desired—e.g., on a user's hand. However, using jets of airor ultrasound does not convey tactile sensations accurately at longdistances—e.g., more than a meter. For example, the user may have to beless than a meter away from the ultrasound emitter in order for the userto feel the tactile sensation. In addition, using a jet of air may notprovide the desired resolution for providing the tactile feedback at aspecific point. A jet of air begins to disperse just a few millimetersafter leaving a confined area such as a nozzle. Thus, if the system isattempting to simulate tactile feedback at only a small location—e.g., aportion of the user's hand that is only a few square centimeters—the jetof air may be incapable of focusing on the small area. Accordingly,these techniques have limitations that reduce their effectiveness formany applications where a tactile sensation is transmitted over adistance.

SUMMARY

Embodiments presented herein include a method and a computer programproduct for augmenting reality based on a visual presentation. Themethod and program product include identifying the location of aphysical object based on data captured from a sensing device andorienting a vortex generator based on the identified location of thephysical object. The method and program product include determining atactile sensation corresponding to at least one of a virtual object inthe visual presentation and an event in the visual presentation, andafter orienting the vortex generator, discharging at least one vortexfrom the vortex generator. The vortex is discharged with physicalattributes to provide the tactile sensation corresponding to the visualpresentation upon striking the physical object.

Another embodiment presented herein includes a system including asensing device and a vortex generator where the generator includesadjusters configured to change an orientation of the vortex generator.The system also includes a computing device communicatively coupled tothe sensing device and the vortex generator. The computing device isconfigured to identify the location of a physical object based on datacaptured from the sensing device and orient the vortex generator basedon the identified location of the physical object. The computing deviceis also configured to determine a tactile sensation corresponding to atleast one of a virtual object in the visual presentation and an event inthe visual presentation, and after orienting the vortex generator,discharge at least one vortex from the vortex generator. The vortex isdischarged with physical attributes to provide the tactile sensationcorresponding to the visual presentation upon striking the physicalobject.

Another embodiment presented herein is a vortex generator. The vortexgenerator includes a body enclosing a central cavity and an actuatormounted onto the body where the actuator is configured to change thevolume of the central cavity in response to a first control signal. Thevortex generator also includes a flexible, elongated nozzle attached tothe body at a first end, where, in response to the actuator changing thevolume of the central cavity, air flows through the nozzle and generatesa vortex at a second end of the nozzle opposite the first end. Thevortex generator includes an adjustment element coupled to the nozzle.The adjustment element is configured to, in response to a second controlsignal, adjust the position of the second end of the nozzle relative tothe first end of the nozzle thereby changing the direction the vortextravels.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above recited aspects are attained andcan be understood in detail, a more particular description ofembodiments of the invention, briefly summarized above, may be had byreference to the appended drawings.

It is to be noted, however, that the appended drawings illustrate onlytypical embodiments of this invention and are therefore not to beconsidered limiting of its scope, for the invention may admit to otherequally effective embodiments.

FIGS. 1A-1B illustrate a vortex generator, according to embodimentsdescribed herein.

FIGS. 2A-2E illustrate various nozzle shapes, according to embodimentsdescribed herein.

FIGS. 3A-3C illustrate creating vortices using the vortex generator 100,according to embodiments described herein.

FIG. 4 illustrates a system for using vortices for providing tactilesensations associated with a visual presentation, according to oneembodiment described herein.

FIG. 5 illustrates a method for using vortices for providing tactilesensations, according to one embodiment described herein.

FIG. 6 illustrates a system for synchronizing multiple vortex generatorsfor providing tactile sensations, according to one embodiment describedherein.

FIG. 7 illustrates a system for integrating a vortex generator with aprojection of a visual presentation, according to one embodimentdescribed herein.

FIG. 8 illustrates a system diagram for providing tactile feedback basedon a visual presentation on a display device, according to oneembodiment described herein.

To facilitate understanding, identical reference numerals have beenused, where possible, to designate identical elements that are common tothe figures. It is contemplated that elements disclosed in oneembodiment may be beneficially utilized on other embodiments withoutspecific recitation.

DETAILED DESCRIPTION

To convey tactile sensations over an open space, a system may use avortex generator to direct one or more vortices at an object in 3-Dspace. As used herein, a vortex is a ring (or torus) of air that travelsthrough space. Once the vortex strikes an object—e.g., a user's hand—itapplies a force. The vortex generator can control the frequency andintensity of the vortices in order to provide different tactilesensations that correspond to a visual presentation. The vortices mayaugment the real-world environment to immerse the user in the visualpresentation. For example, the visual presentation may be a movie or avideo game where the affects of an explosion are transferred to thereal-world environment by the vortices hitting the user or otherphysical objects around the user. In another example, the vortexgenerator may change the frequency or intensity of the vortices toprovide different tactile sensations. Depending on the location of theuser's hand in front of a display screen, the vortex generator mayproduce vortices that convey a different sensation. For example, if theuser's hand is over a portion of a screen displaying water, the vorticesmay provide a feeling of dampness, but if the hand is over a portion ofthe display screen displaying a rocky surface, the vortex may change thefrequency or intensity at which the vortices are discharged to convey abumpy feeling.

The vortex generator may include a flexible nozzle with one or moregimbal controls that enable the generator to discharge a vortex at aparticular 3-D location in space. A controller may synchronize thevortex generator to the visual presentation such that the vortex reachesthe object at the same time a particular event occurs in the visualpresentation. That is, the controller may account for the delay neededfor the vortex to travel to the desired location. As such, thecontroller may receive data from a tracking application that uses one ormore cameras to track the location of the object in order to accuratelyaim the nozzle of the vortex generator and determine the time requiredfor a vortex to reach the object. In this manner, the vortex generatormay be synchronized to a visual presentation in order to provide tactilefeedback.

In the following, reference is made to embodiments of the invention.However, it should be understood that the invention is not limited tospecific described embodiments. Instead, any combination of thefollowing features and elements, whether related to differentembodiments or not, is contemplated to implement and practice theinvention. Furthermore, although embodiments of the invention mayachieve advantages over other possible solutions and over the prior art,whether or not a particular advantage is achieved by a given embodimentis not limiting of the invention. Thus, the following aspects, features,embodiments and advantages are merely illustrative and are notconsidered elements or limitations of the appended claims except whereexplicitly recited in a claim(s). Likewise, reference to “the invention”shall not be construed as a generalization of any inventive subjectmatter disclosed herein and shall not be considered to be an element orlimitation of the appended claims except where explicitly recited in aclaim(s).

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium may be any tangible medium that can contain, or store a programfor use by or in connection with an instruction execution system,apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent invention may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present invention are described below with reference toflowchart illustrations and block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and block diagrams, and combinations of blocks in theflowchart illustrations and block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and block diagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and block diagramblock or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and blockdiagram block or blocks.

FIGS. 1A-1B illustrate a vortex generator 100, according to embodimentsdescribed herein. Specifically, FIG. 1A illustrates an assembled vortexgenerator 100 while FIG. 1B illustrates an exploded view of thedifferent components in the generator 100. As shown, vortex generator100 includes a body 105 that forms a hollow enclosure or cavity. FIG. 1Billustrates that the body 105 includes six apertures for attachingvarious components to the body 105. The six apertures may be spacedequidistantly from each other. Here, each of the six apertures arelocated on a respective side of a substantially rectangular body 105.Five of the six apertures—i.e., the front, back, right, top, and backapertures relative to the view shown in FIG. 1B—are used for attachingactuators 110A-D to the body 105. These actuators 110A-D may be anycomponent that, when controlled, cause the volume of the hollowenclosure defined by the body 105 to change. The shape of the enclosureis not limited to any particular design and may be spherical,rectangular, and the like. In one embodiment, the actuators 110A-D aresound speakers that include diaphragms that may be actuated byrespective control signals. Although five actuators 110 are shown, thevortex generator 100 may include any number of actuators.

If multiple actuators 110 are used, the control signals driving theactuators 110 may be synchronized such that the diaphragms work intandem to compress the air in the enclosure defined by the body 105which effectively reduces the volume of the enclosure. That is, theactuators 110 are in fluid communication with one another through theinterior volume of body 105 such that two or more of the actuators 110may work synchronously to alter the volume of the enclosure. Doing soforces air through the remaining aperture. As shown here, this apertureis coupled to a tube or nozzle 115 which is designed to generate avortex at an output that is opposite of the end coupled to the body 105.Although the body 105 of vortex generator 100 has only one nozzle 115for discharging a vortex, the present disclosure is not limited to such.In other embodiments, a vortex generator may have a plurality ofapertures coupled to respective nozzles for generating vorticessimultaneously. A more detailed explanation of generating the vortexwill be discussed later.

In one embodiment, the nozzle 115 may be flexible as a result of theparticular design of the nozzle 115 or the material used to make thenozzle 115. Here, nozzle 115 is ribbed which provides freedom for thetip of the nozzle 115 to be moved in various directions. Additionally oralternatively, nozzle 115 may be made of a flexible material (e.g.,rubber). Vortex generator 100 also includes gimbal controllers 120 and125 for adjusting the output of the flexible nozzle 115 to point in aspecific direction. Specifically, the controllers include a pancontroller 125 and a tilt controller 120. By adjusting these controllers120, 125, the vortex generator 100 can direct a vortex at specificobject, even if that object changes locations. In one embodiment, thebody 105 may remain stationary while the pan and tilt controllers 120and 125 move the nozzle 115 in the desired direction. Advantageously,changing the position of the tip of the nozzle 115 while keeping therest of the vortex generator 100 fixed may improve the accuracy andresponsiveness of the generator 100 to change the direction in whichvortices are discharged. That is, moving only the nozzle 115 generatesless momentum relative to moving the entire vortex generator 100. Assuch, the accuracy of the vortices may be increased since thecontrollers 120, 125 do not have to move other components in thegenerator 100 (e.g., the body 105 and actuators 110A-D). Also, theresponsiveness of the vortex generator 100 to an instruction to changethe direction at which vortices are discharged may be increased sincethe controllers 120 and 125 only have to overcome the inertia of thenozzle 115 rather than the inertia of other components in the generator100.

The dimensions of the vortex generator 100 may vary depending on theapplications for which it is used. For example, the size of enclosuredefined by the body 105 and the size of the actuators 110A-D of a vortexgenerator 100 used to provide tactile sensation to a user who is lessthan a meter away may be smaller than the corresponding components in avortex generator 100 that discharges vortices at objects that arefurther away. In one embodiment, the body 105 may be 3-D printed whichprovides greater flexibility when designing the vortex generator 100 fora particular application. Furthermore, the length or flexibility of thenozzle 115 may vary depending on the desired range of possibledirections for discharging the vortices. In one embodiment, the width,length, and height of the body 105 may be as small as 1 cm and as largeas a couple of meters. As the dimensions of the body 105 change, thismay enable adding larger actuators 110 that may displace more air, andthus, generate more intense vortices.

FIGS. 2A-2E illustrate various nozzle 115 shapes, according toembodiments described herein. FIG. 2A illustrates a nozzle 210 that hasan hour glass shape where the diameter of the nozzle 210 constricts andthen expands along the nozzle's length. Aperture 205 illustrates theoutput end (or tip) of the nozzle 210 that discharges the vortex. Thewidth (W) and length (L) of nozzle 210 may be varied to generate anydesired W/L ratio. For example, in some applications it may beadvantageous to have a greater length than width or vice versa.Moreover, the diameter of aperture 205 and the width at the narrowestpoint of nozzle 210 may be adjusted to exaggerate or minimize the hourglass shape.

FIG. 2B illustrates a nozzle 215 with a flare shape. Here, nozzle 215has a cylindrical shape for at least some portion of its length butbegins to flare near the aperture 205. The diameter of aperture 205, theangle of the flare, and the ratio between the lengths of the cylindricalportion and the flared portion of nozzle 215 may be adjusted as desired.

FIG. 2C illustrates a nozzle 220 that has a cylindrical shape. Unlikenozzle 215, nozzle 220 is cylindrical for its entire length. However,the diameter at the output of the nozzle (d₁) may be designedindependently of the diameter of the aperture 205 (d₂). For example,changing diameter d2 may change the accuracy and size of the dischargedvortices while diameter d1 may not affect the characteristics of thedischarged vortices. In one embodiment, a suitable value of the diameterd2 may range from 1.0 cm to 5 cm and more specifically from 1.5 cm to2.5 cm.

FIG. 2D illustrates the more general concept that a nozzle 225 does notneed to be cylindrical. Like nozzle 220, nozzle 225 has a shape whosedimensions do not change relative to the length; however, instead ofbeing cylindrical, nozzle 220 is rectangular. In other examples, thenozzle may have other shapes such as a triangle, hexagon, and the like.Regardless of the shape, nozzle 225 may still include the circularaperture 205 which creates the ringed vortices discussed above.Furthermore, nozzle 225 may be flexible so that the direction ofpropagation of the discharged vortices can be altered.

FIG. 2E illustrates a funnel-shaped nozzle 230 which includes a neckportion that narrows and terminates at the aperture 205. In one example,the inner surface of nozzle 230 may also create this funnel shape suchthat the air flowing from the body of the vortex generator to theaperture 205 is compressed before exiting the nozzle 230. Experimentaldata has shown that a vortex generator with an 8 cm×8 cm×8 cm body 105and a 4 cm long nozzle 230 can achieve an 8.5 cm resolution at 1 meter.That is, at a distance of 1 meter, nozzle 230 can discharge vorticesthat strike a circular area with a diameter of 8.5 cm at a high accuracyrate—e.g., greater than 90% accuracy rate. For all the nozzles shown inFIGS. 2A-2E, the diameter of the aperture 205 may be changed in order tovary the accuracy and the force applied by the vortex when it strikes anobject.

In one embodiment, the nozzles shown in FIGS. 2A-2E may have a designthat further increases their flexibility—i.e., the ability of thenozzles to flex relative to the body of the vortex generator. Forexample, the nozzles may be ribbed as shown by nozzle 115 in FIG. 1.

FIGS. 3A-3C illustrate creating vortices using the vortex generator 100,according to one embodiment described herein. As shown, FIG. 3Aillustrates that air may flow from the nozzle 115 into the enclosuredefined by body 105 and vice versa. The output of nozzle 115 forms anaperture 305 through which air from inside the vortex generator 100 canflow into the outside atmosphere. FIG. 3B illustrates the airflowgenerated when the one or more of the actuators 110A-D compress the airenclosed by body 105. Here, decreasing the volume of the enclosureforces air through the nozzle 115 and out of aperture 305. As air isquickly pushed out of the circular aperture 305, the drag from the airmolecules near the surface of the nozzle 115 cause the air molecular atthe center of aperture 305 to move faster than the air molecules exitingthe aperture 305 near the edge of the nozzle 115. This difference inspeed causes the air to rotate around the aperture 305 (i.e., from thecenter of the aperture 305 to the edge of the aperture 305 near thenozzle 115). This rotating ring or vortex of air continues to gainadditional air molecules as more air is forced out of the generator 100.

As shown by FIG. 3C, when the vortex of rotating air becomes too large,the ring pinches-off from the output of the nozzle 115 and uses therotation motion of the air molecules to carry the vortex through space.That is, the rotation of the molecules in the vortex pulls the vortexforward. Moreover, this rotation motion minimizes the energy lost due tofriction and allows the vortex to remain stable—maintain its ringform—over long distances (e.g., greater than 3 meters). The rotation ofthe molecules also creates a region in the middle of the vortex whichhas a lower pressure than the pressure of the ambient air through whichthe vortex travels. Once the vortex strikes an object—e.g., a user'shand—the rotation motion breaks down and ambient air rushes in toequalize the pressure. The force associated with this equalization iswhat generates the tactile sensation felt by the user.

FIG. 4 illustrates a system 400 for using vortices for providing tactilesensations associated with a visual presentation, according to oneembodiment described herein. System 400 includes vortex generator 100,controller 430, computing device 410, and display device 420. Toaccurately aim nozzle 115 of generator 100 at an object 450 in 3-Dspace, the controller 430 provides control signals to the pan and tiltcontrollers 120 and 125 which flex the nozzle 115 in the direction ofthe object 450. To generate the control signals, the computing device410 includes a camera 405 which determines a location of the object 450relative to the vortex generator 100. Although a camera is specificallyillustrated herein, any sensing device capable of providing data fordetermining the spatial location of an object (e.g., depth sensor, IRsensor, LIDAR, visible light camera, charge coupled device, etc.) iswithin the scope of this disclosure. In one embodiment, the sensingdevice is a depth camera (e.g., a range-estimation sensor) that measuresthe distance between camera 405 and the different objects in thecamera's view. However, in other embodiments, the sensing device may bea sensor that detects other types of electromagnetic radiation such asvisible light. The camera 405 may be mounted onto the body of the vortexgenerator 100. In this manner, the relationship between the orientationof the generator 100 and camera 405 is fixed. Thus, if the vortexgenerator 100 moves, the camera can still accurately provide a locationof the object 450 relative to the generator 100. In one embodiment, thecamera 405 may be calibrated in order to correlate locations in theimage captured by the camera 405 to respective values for the pan andtilt controllers 120 and 125.

Computing device 410 includes a tracking module 415 that uses the dataprovided by camera 405 to track object 450. Tracking module 415 may usean object detection algorithm to identify a particular object 450 (e.g.,a face or hand) from other objects in the camera's view. In otherembodiments, the object detection algorithm may use the data provided bycamera 405 to identify specific gestures made by the user. Afteridentifying a particular object 450 or gesture, tracking module 415determines the 3D location of the object 450 relative to the vortexgenerator 100. Based on this location, the tracking module 415 mayselect pan and tilt control values that cause the pan and tiltcontrollers 120 and 125 to point the nozzle 115 at the object's locationin 3D space. These values are transmitted to a processing element 435 incontroller 430 which drives the gimbal controllers 120 and 125 based onthese values. Although FIG. 4 illustrates a single computing device 410,in other embodiments the computing device 410 may include multipleindividual computing devices that are communicatively coupled in orderto perform the embodiments discussed herein.

In addition to providing pan and tilt control signals, the trackingmodule 415 may provide actuator control signals for synchronizing thevortex generator to a visual presentation 425 outputted by a displaydevice 420. As shown, the computing device 410 is communicativelycoupled to the display device 420 that outputs the visual presentation.The display device 420 may be a television, projector, monitor, displayscreen with an integrated touch sensor, or other display source foroutputting a visual presentation. For example, object 450 may be a userviewing the presentation 425 on the display device 420. Based onsynchronization data transmitted by the display device 420, the trackingmodule 415 may send instructions to the controller 430 that cause thevortex generator 100 to output vortices that correspond to a virtualobject or event in the visual presentation. The display device 420transmits information associated with the virtual object or theevent—e.g., a description of the virtual object or event or the time theevent occurs in the visual presentation 425—to the computing device 410.The tracking module 415 may then generate control signals that cause thevortex generator 100 to discharge a vortex that corresponds to thevirtual object or event. Based on the control signals, processingelement 435 drives the actuators (e.g., speaks) using the amplifiers440A-E to generate the desired vortex. For example, the processingelement 435 may generate a low-intensity vortex if the event in thevisual presentation 425 is a soft breeze but a high-intensity vortex ifthe event is an explosion.

In one embodiment, the processing element 435 may control the frequencyand intensity of the vortices to produce different tactile sensations atthe object 450—e.g., a user. For example, by varying the frequency andintensity, the vortices may simulate different textures corresponding todifferent virtual objects in the visual presentation such as sand,stones, grass, water, ridged structures, glass and the like. In thismanner, the stickiness, roughness, slipperiness, etc. of the virtualobjects displayed in the visual presentation 425 may be conveyed to thephysical object 450. Here, the display device 420 may inform thecomputing device 410 what type of virtual object is (or will be)displayed in the visual presentation 425. If the user interacts with thevirtual object (as detected by the tracking module using the sensor405), the computing device may instruct the controller 430 to direct thecorresponding texture of the virtual object to the user. For example, byvarying the frequency at which the vortices are discharged (e.g., 1-30Hz) and the intensity of the vortices (e.g., driving the actuators withvarying voltages), system 400 may deliver different tactile sensations.However, these sensations may vary depending on the user—i.e., thesensations are subjective. For example, discharges vortices at 5 Hzusing a 2 mV control signal may convey a feeling of sliminess to oneuser but a feeling of dampness to another. Accordingly, system 400 maybe configured based on subjective opinion of the user.

In one embodiment, system 400 may account for lag or the time needed forthe vortex generator 100 to discharge a vortex and for the vortex totravel to the object 450. For example, the display device 420 maytransmit information to the computing device 410 associated with futureevents in the visual presentation 425. Based on the distance betweenvortex generator 100 and object 450, the tracking module 415 maydetermine the time needed for a vortex to reach the object 450. Thecomputing device 410 may then send an instruction to the processingelement 435 before the event occurs in the visual presentation 425 toaccount for this latency. In one embodiment, the latency may varydepending on the intensity of the vortex. Vortices with higher internalspin propagate through 3-D space quicker than vortices with slowinternal spin. Thus, the computing device 410 may issue instructions forgenerating a low-intensity vortex earlier than is required if ahigh-intensity vortex is discharged from the vortex generator 100 toreach object 450 at the same time as an event occurs in the visualpresentation 425.

The tracking module 415 may also account for the movement of the object450. Because a vortex travels at a finite speed, the tracking module 415may predict a future location of the object 450 in 3-D space anddischarge the vortex to the predicted location. In one embodiment, thetracking module 415 may base the future movement based on the pastmovement of the object 450. For example, the tracking module 415 maygenerate a velocity vector based on the object's recent movements whichthe module 415 may then use to predict the location of the object 450 atsome future time. Thus, if the event occurs in the visual presentation425 in three seconds, the tracking module 415 may send instructions tothe controller 430 such that the vortices corresponding to the event aredirected to the future location of the object 450 in three seconds, notto the object's current location.

Moreover, the computing device 410 may adjust the intensity of thedischarged vortex based on the distance between the object and thegenerator 100. That is, system 400 may be configured to provide uniformtactile sensations regardless of the objects 450 location in the 3-Dspace. For example, assume system 400 wants the discharge vortices thatcorrespond to a soft breeze occurring in the visual presentation 425.Because the spin of the vortices reduces as it traverses through freespace, the further the object 450 is from the vortex generator 100, theless force will be conveyed to the object 450 when struck by thevortices. Thus, if the vortex generator 100 issued the same vorticeswhen the object 450 was half a meter away from the nozzle 115 as whenthe object 450 is two meters away, the tactile sensation will bedifferent despite being associated with the same event—e.g., a softbreeze. The object 450 two meters away may experience a tactilesensation corresponding to a soft breeze but the object 450 half a meteraway feel a sensation of a strong gust. Accordingly, when providingcontrol signals to processing element 435, the tracking module 415 maydetermine the intensity of the vortex based on the distance betweenobject 450 and nozzle 115 to provide more uniform tactile sensations.

Additional examples of using system 400 to provide tactile feedbackassociated with a visual presentation 425 will be provided later, but ingeneral, system 400 tracks the location of object 450 relative to vortexgenerator 100 to provide tactile sensations corresponding to virtualobjects or events in a visual presentation 425.

FIG. 5 illustrates a method 500 for using vortices for providing tactilesensations, according to one embodiment described herein. At block 505,a camera (e.g., a depth camera) associated with the vortex generator maytransmit location data to the computing device. The location data mayinclude location of different objects in the camera's view space and thedistance from the objects to the camera. Based on this information, thecomputing device may track one or more the objects as it moves in thecamera's view space.

The computing device may include a tracking module that uses an objectrecognition algorithm (e.g., a facial or gesture recognition program)for tracking the objects in the view space based on the location data.The embodiments discussed herein are not limited to any particularmethod or technique for identifying, distinguishing, and tracking theobjects. For example, the tracking module may distinguish betweendifferent users based on a facial recognition tracking algorithm. Inanother example, the tracking module may use a technique for identifyingmovable objects (e.g., plants, curtains, and the like) that can beaffected by vortices versus non-movable objects (e.g., a desk or couch)that are not moved when struck by vortices. When augmenting reality tocorrespond to a visual presentation, the system may direct vortices atthe movable objects, but not at the non-moveable objects.

At block 510, the computing device determines a tactile or hapticsensation corresponding to a visual presentation. The visualpresentation may be a single image or a video. For example, the trackingmodule may monitor the user's hand over a device displaying the visualpresentation and select a different tactile sensation based on thelocation of the hand. If the user's hand is over a portion of the visualpresentation that displays rocks, the vortex generator may producevortices that convey a sense of roughness. However, if the user movesher hand to hover over a different portion displaying sand, the vortexgenerator may discharge vortices that convey a sense of grittiness. Inanother embodiment, if the visual presentation is a video, the displaydevice may transmit information about different events to the computingdevice. The information may characterize the event as well as the timethe event will take place in the visual presentation. Based on thecurrent (or future) location of the object, the vortex generatordischarges one or more vortices such that the vortices reach the objectat the same time the event occurs in the visual presentation.

To provide the tactile sensation associated with the visualpresentation, at block 515, the computing device transmits instructionsor control signals to the controller that operates the vortex generator.The controller may translate the instructions into specific pan and tiltcommands that move the flexible nozzle on the generator. In oneembodiment, the pan and title commands may move the nozzle but not therest of the components of the vortex generator. As discussed above, thenozzle may aim the vortices at an identified object based on theobject's current location. However, if the object is moving, the nozzlemay point to a predicted or future location of the object.

At block 520, the processing element in the controller may transmitsignals to amplifiers that drive the actuators in the vortex generator.The actuators may decrease the volume of an internal chamber in thevortex generator which forces air out of the nozzle. This flowing aircreates vortices which then propagate in the direction the nozzle isaimed. In one embodiment, the computing device or controller may accountfor the time needed for the vortex to travel from the generator to theobject. For example, if the vortex is to provide a tactile sensationcorresponding to the future event in the visual presentation, thecomputing device may determine the time required for a vortex to reachthe object based on the distance from the object to the vortex generatorand the particular propagation speed of the vortex (i.e., some vorticestravel faster than others).

The tactile sensation may include one vortex or a plurality of vorticesissued at a certain frequency. For example, the vortex generator mayissue a single vortex that corresponds to a particular event or scene inthe visual presentation. By changing the intensity of the vortex (i.e.,the circular rotation or the amount of air in the vortex), the vortexgenerator can provide a different tactile sensation. For example, anexplosion in the visual presentation may be associated with a vortex ofgreater intensity than a door being slammed shut. Moreover, the vortexgenerator may issue consecutive vortices at either a fixed frequency orin a predefined pattern. For example, a plurality of consecutivevortices with a set frequency and intensity may correspond to aparticular texture while a predefined pattern of vortices that havedifferent intensities and different timing between subsequent vorticesmay correspond to other events—e.g., a butterfly flapping its wings. Inone embodiment, the computing device may adjust the frequency orintensity of the vortices based on the distance between the object andthe vortex generator.

FIG. 6 illustrates a system 600 for synchronizing multiple vortexgenerators 100A-B for providing tactile sensations, according to oneembodiment described herein. System 600 differs from system 400 in FIG.4 in that system 600 includes a scene camera 605 that enables thetracking module 415 to coordinate the different vortex generators 100A-Bto provide tactile sensations to object 450. For example, the scenecamera 605 may be depth camera that measures the distance between itselfand the objects in the real-world environment. In one embodiment, thescene camera 605 and the local cameras 405A and 405B may all be depthcameras although the scene camera 605 may have a greater range than thelocal cameras 405A and 405B.

The scene camera 605 may provide a more accurate 3-D location of theobject 450 when compared to only using the local cameras 405A-B mountedon the vortex generators 100A-B. The scene camera 605 may be mounted ontop of a ceiling or near the top of a wall to maximize its viewing area.The scene camera 605 and the local cameras 405 may be calibrated tocreate a unified coordinate system. During the calibration process, thedifferent locations captured by the respective cameras 605, 405 arecorrelated such that location data provided by each camera 605, 405 canbe combined to identify the object's location in 3-D space. Using thelocation data provided from the cameras 605 and 405 to determine theobject's location in a unified coordinate system may provide a moreaccurate distance measurement between the vortex generators 100A and100B and object 450. The distance measurement may then be used todetermine the latency between the respective vortex generators 100A-Band the object 450. For example, assume the visual presentation is agame where the user (i.e., object 450) is playing the game infirst-person mode. If a bird circles the user's head, vortex generator100A may provide the tacticle sensation of a bird flapping its wingsnear the right side of the user's head but vortex generator 100B maytake over the responsibility for simulating the bird flying near theleft side of the user's head. To coordinate the tactile sensation ofthis event, system 600 uses the accurate distance and latencymeasurement provided by combining the location data from scene camera605 with the local cameras 405A-B to correlate the object's location toa unified coordinate system.

In addition, the respective controllers 430A and 430B are coupled to thesame computing device 410 and may receive instructions from the sametracking module 415. Returning the example provided above, the trackingmodule 415 may include the logic for determining when to switch fromusing vortex generator 100A to using vortex generator 100B. Here,tracking module 415 is an application loaded into memory 615 and isexecuted by processor 610 which may be any processor capable ofperforming the functions recited herein.

In one embodiment, tracking module 415 may use the vortex generators 100to extend the visual presentation to physical objects in the surroundingenvironment. For example, if the visual presentation displays a beachwith a gentle breeze, system 600 may use the cameras 605 and 405 toidentify movable objects 450 in the physical environment—e.g., plants,curtains, and the like. The tracking module 415 may then instruct thevortex generators 100 to direct their vortices at the identified objects450 to simulate an ocean breeze. In another example, system 600 may becombined or linked with a surround sound system that providesmulti-directional sounds to the user. If the sound system generates thesound of an animal moving to the side of the user viewing the visualpresentation, the tracking module 415 may instruct one (or both) of thevortex generators 100 to discharge vortices at a moveable object 450near the speaker generating the noise to simulate an animal moving theobject 450. In this manner, system 600 may use multiple vortexgenerators 100 simultaneously or independently to provide directionalfeedback that corresponds to a visual presentation.

FIG. 7 illustrates a system 700 for integrating a vortex generator 100with a projection of a visual presentation, according to one embodimentdescribed herein. System 700 includes a display device—i.e., projector705—which includes an integrated depth camera 605 which is mountedseparately from the vortex generator 100. Although not shown, system 700may include a tracking module and controller for receiving the locationdata provided by camera 605 and providing instructions to the vortexgenerator 100. Here, system 700 tracks the location of the user's hands715. Specifically, based on the information provided by camera 605, thetracking module determines what area of the projected image 720 thehands 715 are located.

Projector 705 may project an image that includes different portions725A-C. These portions may display images of different objects that mayhave different textures—e.g., sand, rocks, water, etc. Based on thelocation of hand 715, the vortex generator provides a different tactilesensation. That is, as the user moves her hand 715 to overlap adifferent portion 725, this movement is detected by camera 605 and usedto select a different tactile sensation. In addition to tracking thehand 715 to select the tactile sensation, the location of the hand isused to adjust the direction the nozzle of the vortex generator 100 isaiming. Thus, as the user moves her hands 715 from portion 725B suchthat it now overlaps portion 725C (i.e., the image displayed in portion725C is displayed on the user's hands 715), the vortex generator 100 mayadjust the pan and tilt controllers to discharge vortices to the newlocation of the hands 715. Because the texture of the object or objectsdisplayed in portion 725C are different than the objects displayed inportion 725B, the vortex generator 100 discharges a vortex or a seriesof vortices that provide a tactile sensation corresponding to theobjects displayed in portion 725C.

The visual presentation displayed in area 720 may either be a singleimage or a video. For example, the different portions 725 may correspondto three different textures and respective tactile sensations thatchange as the user moves her hand 715 to a new portion 725.Alternatively, if the visual presentation is a video, the tactilesensation may change even if the location of the hand 715 remains fixed.For example, portion 725B may display a butterfly flapping its wings inthe users cupped hands. As the wings beat, the vortex generator 100 mayprovide vortices with different intensities or frequency to simulate theair moved by the flapping wings—i.e., the tactile sensation changesrelative to time to correspond to the changing event. In this example,for user to feel the tactile sensation associated with the flappingwings, the vortex generator 100 may discharge the vortices early toaccount for the latency between the time needed for the projected imageto reach the user's hands 715 (i.e., the speed of light) and the timeneeded for the vortex to reach hands 715. Because the down beat of thewings may cause a different tactile sensation than when the wings arelifted up, the respective tactile sensations may be provided before thecorresponding image is ever displayed on the user's hands 715. Byaccounting for this latency, once the action is displayed on hands 715,the associated vortex or series of vortices may arrive in synch with theimage.

System 700 may be calibrated such that a location and depth of theuser's hand 715 corresponds to a particular pan and title on the nozzlecontrollers on vortex generator 100. Thus, once the hand 715 isidentified, its corresponding location relative to the camera 605 may bedirectly mapped to controls that aim the nozzle at the hand 715. Inaddition, detecting the location of the hand 715 in 3-D space enablesthe tracking module to determine what portion 725 of the visualpresentation is illuminated on the hand 715. Based on this information,system 700 is able to determine what tactile sensation to provide. Inother embodiments, additional cameras (e.g., a local camera mount on thevortex generator) may be added to system 700.

FIG. 8 illustrates a system diagram for providing tactile sensationsbased on a visual presentation on a display device 800, according to oneembodiment described herein. Display device 800 may be a television,computer monitor, tablet, smartphone, laptop, and the like. Vortexgenerator 100 and depth camera 405 may be mounted on the display device800 such that changing the orientation of device 800 does not change theposition of the vortex generator 100 relative to the position of thedisplay device 800—i.e., the display device 800, vortex generator 100,and camera 405 move together as a single unit.

In one embodiment, the display device 800 may be a computing deviceexecuting the tracking module shown in FIG. 4 that uses location dataprovided by camera 405 to provide tactile sensations to the user's hand850. For example, device 800 may be a tablet, smartphone, laptop,desktop computer, or other computing device that includes a processorand memory for executing the tracking module. Thus, FIG. 8 represents anembodiment where the computing device 410, display device 420, and eventhe controller 430 of FIG. 4 may be integrated into a single component.In one embodiment, the display device 800 may also provide power to thevortex generator 100 and camera 405.

The display device 800 may use the scene information captured by camera405 to track the user's hand 850 relative to the different portions ofthe display screen 805. For example, the left side of screen 805includes a plurality of displayed buttons 810A-C. Unlike physicalbuttons, buttons 810 are displayed on the screen 805, and thus, caneasily be rearranged or removed such that other objects can be displayedon screen 805. Using the vortex generator 100 and camera 405, the usercan interact with the buttons. For example, the display screen 805 maynot include touch sensors integrated into screen 805 that allows a userto interact with the displayed buttons 810. Instead, device 800 may usethe data provided by camera 405 to determine when the user isinteracting with the buttons 810. For example, when the tacking modulein device 800 determines that hand 850 is hovering over a location ofthe screen 805 corresponding to a button 810 (e.g., the user holds herhand 850 such that it overlaps at least a portion of a button 810 for apredefined period of time), the device 800 may perform the actionassociated with the button 810 such as scrolling a screen, turning apage in an electronic book, starting or stopping media content, and thelike. The vortex generator 100 may be used to provide tactile feedbackto inform the user that the button 810 was selected. That is, instead ofsolely relying on a change in the information displayed on the screen805 to indicate when a button 810 is activated, the vortex generator 100may discharge a vortex that strikes the user's hand 850 thereby lettingthe user know the button 810 was activated. If, for example, button 810Cis activated by “double-clicking”—i.e., performing two tapping motionsby a finger of hand 850, once each tapping gesture is detected by thetracking module, the vortex generator 100 may discharge two respectivevortices to inform the user that the double tap was registered by thedevice 800.

In another embodiment, the vortex generator 100 may discharge vorticesto inform the user that she is about to activate a button 810. Forexample, as the user moves closer to a button 810, the vortex generator100 may increase the intensity of the vortices being discharged. As theuser moves her hand 850 away from the buttons 810, the intensity may bedecreased. Doing so informs the user how close she is to activating thebutton as well as prevents the user from inadvertently activating thebuttons 810.

The right side of screen 805 is divided into two portions: upper portion815 and lower portion 820. Each portion 815, 820 may display a differentobject or objects that correspond to respective tactile sensations.Accordingly, as the camera 405 determines that the hand 850 has movedover the respective portions 815, 820, the device 800 instructs thevortex generator 100 to discharge vortices that convey the appropriatetactile sensation at the hand 850. In this manner, the user can “feel”the scene being displayed on the screen 805 without contacting thescreen 805. For example, upper portion 815 may include a structure wherethe vortex generator 100 provides vortices that correspond to thestructure's contours or texture while lower portion 820 may be thelandscape scene where the user can feel the different textures of theland (e.g., rocks, sand, water, etc.) surrounding the structure shown inupper portion 815.

CONCLUSION

To convey tactile sensations over an open space, a system may use avortex generator to direct one or more vortices at an object in 3-Dspace. As used herein, a vortex is a ring (or torus) of air that travelsthrough space. Once the vortex strikes an object—e.g., a user's hand—itapplies a force. The vortex generator can control the frequency andintensity of the vortices in order to provide different tactilesensations that correspond to a visual presentation. The vortices mayaugment the real-world environment to immerse the user in the visualpresentation. For example, the visual presentation may be a movie or avideo game where the affects of an explosion are transferred to thereal-world environment by the vortices hitting the user or otherphysical objects around the user. In another example, the vortexgenerator may change the frequency or intensity of the vortices toprovide different tactile sensations. Depending on the location of theuser's hand in front of a display screen, the vortex generator mayproduce vortices that convey a different sensation. For example, if theuser's hand is over a portion of a screen displaying water, the vorticesmay provide a feeling of dampness, but if the hand is over a portion ofthe display screen displaying a rocky surface, the vortex may change thefrequency or intensity at which the vortices are discharged to convey abumpy feeling.

The vortex generator may include a flexible nozzle with one or moregimbal controls that enable the generator to discharge a vortex at aparticular 3-D location in space. A controller may synchronize thevortex generator to the visual presentation such that the vortex reachesthe object at the same time a particular event occurs in the visualpresentation. That is, the controller may account for the delay neededfor the vortex to travel to the desired location. As such, thecontroller may receive data from a tracking application that uses one ormore cameras to track the location of the object in order to accuratelyaim the nozzle of the vortex generator and determine the time requiredfor a vortex to reach the object. In this manner, the vortex generatormay be synchronized to a visual presentation in order to provide tactilefeedback.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder or out of order, depending upon the functionality involved. Itwill also be noted that each block of the block diagrams and flowchartillustration, and combinations of blocks in the block diagrams andflowchart illustration, can be implemented by special purposehardware-based systems that perform the specified functions or acts, orcombinations of special purpose hardware and computer instructions.

While the foregoing is directed to embodiments of the present invention,other and further embodiments of the invention may be devised withoutdeparting from the basic scope thereof, and the scope thereof isdetermined by the claims that follow.

What is claimed is:
 1. A method for augmenting reality based on a visualpresentation, the method comprising: identifying the location of aphysical object based on data captured from a sensing device; orientinga vortex generator based on the identified location of the physicalobject; determining a tactile sensation corresponding to at least one ofa virtual object in the visual presentation and an event in the visualpresentation; selecting a predefined pattern of sequential vortices forconveying the tactile sensation upon striking the physical object, thepredefined pattern defining one or more frequencies for discharging thesequential vortices and one or more intensities of the sequentialvortices; and after orienting the vortex generator, discharging thesequential vortices from the vortex generator using the predefinedpattern.
 2. The method of claim 1, wherein the predefined pattern ofsequential vortices provide the tactile sensation corresponding to atexture of the virtual object when striking the physical object.
 3. Themethod of claim 1, further comprising: determining a time delay betweenthe event in the visual presentation and the time required for thevortex to strike the physical object, wherein the vortex is dischargedfrom the vortex generator to account for the time delay.
 4. The methodof claim 1, further comprising: adjusting an intensity of the vortexbased on a measured distance from the vortex generator to the physicalobject such that a substantial similar tactile sensation is provided tothe physical object regardless of the distance between the physicalobject and the vortex generator.
 5. The method of claim 1, whereinorienting the vortex generator further comprises: determining adirection of movement of the physical object; and orienting the vortexgenerator to discharge the vortex at a predicted, future location of thephysical object.
 6. A computer program product for augmenting realitybased on a visual presentation, the computer program product comprising:a computer-readable storage medium having computer-readable program codeembodied therewith, the computer-readable program code configured to:identify the location of a physical object based on data captured from asensing device; orient a vortex generator based on the identifiedlocation of the physical object; determine a tactile sensationcorresponding to at least one of a virtual object in the visualpresentation and an event in the visual presentation; select apredefined pattern of sequential vortices for conveying the tactilesensation upon striking the physical object, the predefined patterndefining one or more frequencies for discharging the sequential vorticesand one or more intensities of the sequential vortices; and afterorienting the vortex generator, discharge the sequential vortices fromthe vortex generator using the predefined pattern.
 7. The computerprogram product of claim 6, wherein the predefined pattern of sequentialvortices provide the tactile sensation corresponding to a texture of thevirtual object when striking the physical object.
 8. The computerprogram product of claim 6, further comprising computer-readable programcode configured to: determine a time delay between the event in thevisual presentation and the time required for the vortex to strike thephysical object, wherein the vortex is discharged from the vortexgenerator to account for the time delay.
 9. The computer program productof claim 6, further comprising computer-readable program code configuredto: adjusting an intensity of the vortex based on a measured distancefrom the vortex generator to the physical object such that a substantialsimilar tactile sensation is provided to the physical object regardlessof the distance between the physical object and the vortex generator.10. The computer program product of claim 6, wherein orienting thevortex generator further comprises computer-readable program codeconfigured to: determine a direction of movement of the physical object;and orient the vortex generator to discharge the vortex at a predicted,future location of the physical object.
 11. A system, comprising: asensing device; a vortex generator configured to discharge a vortex, thevortex generator comprising adjusters configured to change anorientation of the vortex generator; and a computing devicecommunicatively coupled to the sensing device and the vortex generator,the computing device configured to: identify the location of a physicalobject based on data captured from the sensing device; orient the vortexgenerator based on the identified location of the physical object;determine a tactile sensation corresponding to at least one of a virtualobject in the visual presentation and an event in the visualpresentation; selecting a predefined pattern of sequential vortices forconveying the tactile sensation upon striking the physical object, thepredefined pattern defining one or more frequencies for discharging thesequential vortices and one or more intensities for the sequentialvortices; and after orienting the vortex generator, discharge thesequential vortices from the vortex generator using the predefinedpattern.
 12. The system of claim 11, wherein the sensing device isfixable mounted such that a position of the vortex generator relative toa position of the sensing device remains constant as the vortexgenerator is moved.
 13. The system of claim 12, further comprising adepth sensor, wherein the computing device is configured to use datacaptured by the sensing device and the depth sensor to identify thelocation of the physical object in 3-D space.
 14. The system of claim11, wherein the computing device is configured to orient the vortexgenerator by transmitting instructions to the adjusters such that anozzle of the vortex generator is moved.
 15. The system of claim 11,further comprising: a display device configured to display the visualpresentation, wherein the display device is communicatively coupled tothe computing device to provide the computing device with informationassociated with at least one of the virtual object in the visualpresentation and the event in the visual presentation.
 16. The system ofclaim 15, wherein the display device and the computing device areintegrated to form a unified device, wherein the vortex generator andsensing device are mounted onto the unified device.
 17. A vortexgenerator comprising: a body enclosing a central cavity; an actuatormounted onto the body, the actuator configured to change the volume ofthe central cavity in response to a first control signal; a flexible,elongated nozzle attached to the body at a first end, wherein, inresponse to the actuator changing the volume of the central cavity, airflows through the nozzle and generates a vortex at a second end of thenozzle opposite the first end; and an adjustment element coupled to thenozzle, the adjustment element is configured to, in response to a secondcontrol signal, adjust the position of the second end of the nozzlerelative to the first end of the nozzle thereby changing the directionthe vortex travels.
 18. The vortex generator of claim 17, wherein theadjustment element moves the second end of the nozzle relative to thebody, such that the adjustment element does not move the body whenadjusting the second end of the nozzle.
 19. The vortex generator ofclaim 17, wherein the adjustment element is a first gimbal controllerthat moves the second end of the nozzle along a first axis, wherein thevortex generator further comprises a second gimbal controller thatadjusts the second end of the nozzle along a second axis perpendicularto the first axis.